package cn.bugstack.domain.task.repository;

import cn.bugstack.domain.task.model.entity.TaskEntity;

import java.util.List;

/**
 * 任务仓储层接口
 * @author 19872
 */
public interface ITaskRepository {

    /**
     * 查询没有发送成功的消息列表
     * @return 任务实体列表
     */
    List<TaskEntity> queryNoSendMessageTaskList();

    /**
     * 发送消息
     * @param taskEntity 任务实体对象
     */
    void sendMessage(TaskEntity taskEntity);

    /**
     * 更新任务发送成功
     * @param userId  用户ID
     * @param messageId 消息ID
     */
    void updateTaskSendMessageCompleted(String userId,String messageId);

    /**
     * 更新任务发送失败
     * @param userId 用户ID
     * @param messageId 消息ID
     */
    void updateTaskSendMessageFail(String userId,String messageId);
}
